// pages/couponList/couponList.js
var app = getApp();
const getCouponListUrl = '/Fans/myCashCoupon';
const getShareInfoUrl = '/Fans/getCashShareContent';
const getQRCodeImgUrl = '/WelfareQrCode/getQrCode';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    isLoading: 1,//是否显示加载中图标
    QRCodeImg:'',//二维码图片地址
    QRCodeImgHttp: '',//http二维码图片地址
    isUseHttp: 0,//判断是否使用http
    isQRCodeMaskShow:0,//控制分享二维码弹层的显示
    isShareMaskShow:0,//控制分享优惠券弹层的显示
    coupon_num:0,//未使用的优惠券个数
    couponList:[],//初始化优惠券列表
    page:1,//初始化优惠券页码
    currentTab:0,
    current_cash_id:0,//当前现金券的ID
    shareTitle:'',//分享的标题
    sharePath:'',//分享的路径
    imageUrl:''//分享的图片地址
  },
 
  // 滚动切换标签样式
  switchTab: function (e) {
    this.setData({
      couponList: [],
      currentTab: e.detail.current,
      page: 1
    });
    this.checkCor();
    this.getCouponList();
  },
  // 点击标题切换当前页时改变样式
  swichNav: function (e) {
    var cur = e.target.dataset.current;
    if (this.data.currentTaB == cur) { return false; }
    else {
      this.setData({
        currentTab: cur
      })
    }
  },
  //判断当前滚动超过一屏时，设置tab标题滚动条。
  checkCor: function () {
    if (this.data.currentTab > 4) {
      this.setData({
        scrollLeft: 300
      })
    } else {
      this.setData({
        scrollLeft: 0
      })
    }
  },
  // 获取优惠券列表
  getCouponList: function () {
    var _this = this;
    _this.setData({
      isLoading: 1
    })
    var requestData = {
      token: _this.data.token,
      version: app.setConfig.version,
      type: app.setConfig.type,
      use_type: _this.data.currentTab,
      page: _this.data.page
    }
    app.post(getCouponListUrl, requestData, function (res) {
      if (res.code == 2000) {
        var couponList = _this.data.couponList;
        couponList = couponList.concat(res.data.list);
        for (var i = 0; i < couponList.length;i++){
          couponList[i].face_price = parseInt(couponList[i].face_price);
          couponList[i].full_price = parseInt(couponList[i].full_price);
        }
        _this.setData({
          isLoading: 0,
          coupon_num: res.data.num,
          couponList: couponList,
          page: res.data.page
        })
      } else {
        wx.showToast({
          title: res.msg,
          icon: 'none',
          duration: 2000
        })
      }
    })
  },
  // 获取分享信息
  getShareInfo: function () {
    var _this = this;
    var requestData = {
      token: _this.data.token,
      version: app.setConfig.version,
      type: app.setConfig.type,
      cash_id: _this.data.current_cash_id
    }
    app.post(getShareInfoUrl, requestData, function (res) {
      if (res.code == 2000) {
        _this.setData({
          shareTitle: res.data.title,
          shareImg: res.data.img,
          sharePath: res.data.page
        })
      } else {
        wx.showToast({
          title: res.msg,
          icon: 'none',
          duration: 2000
        })
      }
    })
  },
  // 获取二维码图片
  getQRCodeImg: function () {
    var _this = this;
    var requestData = {
      token: _this.data.token,
      version: app.setConfig.version,
      type: app.setConfig.type,
      share_type: 1,
      cash_id: _this.data.current_cash_id
    }
    app.post(getQRCodeImgUrl, requestData, function (res) {
      if(res.code==2000){
      _this.setData({
        QRCodeImg: res.data.image,
        QRCodeImgHttp: res.data.image_http
      })
      }else{
        wx.showToast({
          title: res.msg,
          icon: "none",
          duration: 2000
        });
      }
    })
  },
  // 点击获取生成二维码按钮
  gerQrcode:function(e){
    var _this = this;
    var formId = e.detail.formId;
    app.postFormId(_this.data.token, formId);
    _this.setData({
      isQRCodeMaskShow:1,
      isShareMaskShow:0
    })
  },
  // 保存图片
  saveImg:function(e){
    var _this = this;
    var formId = e.detail.formId;
    app.postFormId(_this.data.token, formId);
    console.log(e);
    wx.downloadFile({
      url: _this.data.QRCodeImg,
      success: function (res) {
        console.log(res)
        wx.saveImageToPhotosAlbum({
          filePath: res.tempFilePath,
          success: function (res) {
            console.log(res)
            wx.showToast({
              title: '图片保存成功',
              icon: 'success',
              duration: 2000
            })
          },
          fail: function (res) {
            console.log(res)
            console.log('fail')
          }
        })
      },
      fail: function () {
        console.log('fail')
      }
    })
  },
  // 预览图片
  previewImg: function () {
    var _this = this;
    var urls;
    if (_this.data.isUseHttp == 1) {
      urls = [_this.data.QRCodeImgHttp]
    } else {
      urls = [_this.data.QRCodeImg]
    }
    wx.previewImage({
      current: _this.data.QRCodeImg, // 当前显示图片的http链接
      urls: urls
    })
  },
  // 点击发送优惠券
  shareEvent: function (e) {
    var formId = e.detail.formId;
    app.postFormId(this.data.token, formId);
    this.setData({
      isShareMaskShow: 1,
      current_cash_id: e.target.dataset.current_cash_id
    });
    this.getShareInfo();
    this.getQRCodeImg();
  },
  // 关闭分享弹层
  closeMask: function () {
    this.setData({
      isShareMaskShow: 0
    })
  },
  // 关闭分享二维码弹层
  closeQRCodeMask:function(){
    this.setData({
      isQRCodeMaskShow: 0
    })
  },
  // 阻止点击事件
  preventEvent: function () {
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var _this = this;
    wx.getSystemInfo({
      success: function (res) {
        if (res.system.search('iOS') == -1) {
          _this.setData({
            isUseHttp: 1
          })
        } else {
          _this.setData({
            isUseHttp: 0
          })
        }
        var clientHeight = res.windowHeight,
          clientWidth = res.windowWidth;
        _this.setData({
          winWidth: res.windowWidth,
          winHeight: clientHeight
        })
      }
    })
    _this.loop();
  },
  // 判断是否获取到token的值了
  loop: function () {
    var _this = this;
    var theToken = wx.getStorageSync("token");
    if (!theToken) {
      setTimeout(function () {
        _this.loop()
      }, 100);
    } else {
      _this.setData({
        token: theToken
      });
      _this.getCouponList();
    }
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
  
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
  
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
  
  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
  
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
  
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    this.getCouponList();
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    var _this = this;
    _this.setData({
      isShareMaskShow:0
    })
    return {
      title: _this.data.shareTitle,
      path: _this.data.sharePath,
      imageUrl: _this.data.shareImg
    }
  }
})